package com.anjubao.parking.municipal.parkinglot.dto;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.ToString;
import lombok.experimental.Accessors;

import javax.validation.Valid;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.util.List;

/**
 * @author anjubao
 */
@ApiModel(value = "EntryShotUrlDTO", description = "车辆进出图片URL信息")
@Data
@ToString
@Accessors(chain = true)
public class EntryShotUrlDTO implements Serializable {

    /**
     * 车场编号
     */
    @NotBlank(message = "车场编号不能为空")
    @ApiModelProperty(value = "停车场编号", required = true)
    private String parkingLotCode;

    /**
     * 本地车场记录Id(本地系统需确保唯一)
     */
    @ApiModelProperty(value = "本地停车场记录 (与进出停车场记录code不能同时为空)")
    private String localRecordId;

    /**
     * 云平台记录Id
     */
    @ApiModelProperty(value = "进出停车场记录code (与本地停车场记录不能同时为空)")
    private String parkingRecordCode;

    /**
     * 包含入场出场图片信息
     */
    @NotNull(message = "出入场图片信息不能为空")
    @ApiModelProperty(value = "出场和入场的图片信息(图片路径和类型必须同时存在)", required = true)
    @Valid
    private List<SnapshotsDto> snapshots;

}
